package mc.support.orm.shard.sql.comm;

import com.alibaba.druid.sql.ast.SQLStatement;
import mc.support.orm.shard.ShardStrategy;

/**
 * Created with IntelliJ IDEA. <br/>
 * Author: Francis Yuen    <br/>
 * Date: 2014-10-15  <br/>
 */
public interface SqlPhaser {

    /**
     * phase original sql
     *
     * @param statement
     * @param params    params of mybatis statement
     * @param mapperId  statement id of mybatis
     * @return
     */
    String phase( SQLStatement statement, Object params, String mapperId, ShardStrategy strategy );

}
